#define _CRT_SECURE_NO_WARNINGS 1

#include<stdio.h>
#include<string.h>

int main()
{
	char arr1[1000] = { 0 };
	const char* arr3 = "#";
	int arr4[1000] = { 0 };
	while (scanf("%s", &arr1) != 0)
	{
		char arr2[1000] = { 0 };
		strcpy(arr2, arr1);
		int i = 0;
		arr2[0] = strtok(arr2, arr3);
		for (i = 1; i < 1000; i++)
		{
			arr2[i] = strtok(NULL, arr3);
		}
		int sz = sizeof(arr2) / sizeof(arr2[0]);
		for (i = 0; i < sz; i++)
		{
			arr4[i] = (int)strlen(arr2[i]);
		}
		int sz2 = sizeof(arr4) / sizeof(arr4[0]);
		int count = 0;
		for (i = 0; i < sz2; i++)
		{

		}
	}
	return 0;
}

//int main()
//{
//	int n = 0;
//	int input = 0;
//	int find = 0;
//	int i = 0;
//	int arr[100] = { 0 };
//	while (scanf("%d", &n) != 0)
//	{
//		for (i = 0; i < n; i++)
//		{
//			arr[i] = scanf("%d ", &input);
//		}
//		scanf("%d", &find);
//		for (i = 0; i < n; i++)
//		{
//			if (arr[i] == find)
//			{
//				printf("%d\n", i + 1);
//				break;
//			}
//			else
//			{
//				printf("-1");
//			}
//		}
//	}
//	return 0;
//}

//int main()
//{
//	int a = 0;
//	int b = 0;
//	char c = '\0';
//	while (scanf("%c %d %d", &c, &a, &b) != 0)
//	{
//		switch (c)
//		{
//		case '+':
//			printf("%d\n", a + b);
//			break;
//		case '-':
//			printf("%d\n", a - b);
//			break;
//		case '*':
//			printf("%d\n", a * b);
//			break;
//		case '/':
//			printf("%d\n", a / b);
//			break;
//		default:
//			break;
//		}
//	}
//	return 0;
//}

//void Print(int a, char b)
//{
//	int z = a;
//	int x = (z % 10);
//	int count = 0;
//	while (z > 0)
//	{
//		z /= 10;
//		count++;
//	}
//	int k = 0;
//	int num = 0;
//	int l = 0;
//	for (k = 0; k < count; k++)
//	{
//		num = a % 10;
//		a /= 10;
//		l += num;
//	}
//	int y = l;
//	int i = 0;
//	for (i = 0; i < x; i++)
//	{
//		int j = 0;
//		for (j = 0; j < y; j++)
//		{
//			printf("%c", b);
//		}
//		printf("\n");
//	}
//}
//
//int main()
//{
//	int a = 0;
//	while (scanf("%d", &a) != 0)
//	{
//		getchar();
//		char b = getchar();
//		Print(a, b);
//	}
//
//	return 0;
//}